Evaluating Defect Detection Techniques for Software Requirements Inspections
نویسندگان
چکیده
Perspective-Based Reading (PBR) is a family of defect detection techniques which have been proposed to improve the effectiveness of software requirements inspections. PBR drives individual document reading by means of perspectivedependent procedural scenarios, which are different for each inspector in the team. Based on the former PBR experiments, we present a controlled experiment with more than one hundred undergraduate students who conducted software inspections as part of a university course. We tested an enhanced procedural version of PBR by comparing it ad hoc reading and checklist-based reading, and analyzing data both at the individual and team level. The experimental results do not support previous findings that PBR improves defect detection effectiveness with respect to nonsystematic reading techniques. We also investigated team composition issues by assessing the effects of combining different or identical perspectives at inspection meetings. The empirical test did not meet the assumption that different perspectives in an inspection team achieve a higher coverage of a document. Process conformance have been explicitly considered and used to check whether readers have departed from the assigned guidelines and then filter raw data. We discovered that only one fifth of PBR reviewers had actually followed their scenarios, and even many checklist reviewers had reverted back to an ad hoc reading style. From the debriefing questionnaires, we measured the reviewers’ self-assessment of the assigned reading techniques. The results revealed no relationship with the type of reading technique but the subjective evaluation was significantly related to trust in process conformance. This experiment provides evidence that process conformance issues play a critical role in the successful application of reading techniques and more generally, software process tools.
منابع مشابه
Assessing Defect Detection Methods for Software Requirements Inspections Through External Replication
This paper presents the external replication of a controlled experiment which compared three defect detection techniques (Ad Hoc, Checklist, and Defect-based Scenario) for software requirements inspections, and evaluated the benefits of collection meetings after individual reviews. The results of our replication were partially different from those of the original experiment. Unlike the original...
متن کاملSystem and Software Requirements Validation through Inspections: Constructive Reading and Mining Requirements from Natural Language Requirements Documents
Defects introduced early in the effort to engineer a system due to poorly identified requirements are generally seen as a major factor leading to high system and software costs, especially if the defective requirements are undetected until later development phases in the lifecycle of engineering a system. In software development, inspection methods have been particularly successful when applied...
متن کاملExtended Metrics to Evaluate Cost Effectiveness of Software Inspections
For more than twenty-five years software inspections have been considered an effective and efficient method for software quality improvement [3,4,9]. The goal of inspections is to detect defect before the testing stage begins. According to the data published in the literature, software design inspections save on average 44% of the defect detection costs, and code inspections save on average 39%...
متن کاملSurveyed empirical studies on inspection versus testing
This article helps define questions regarding defect detection techniques and presents a survey of empirical studies on testing and inspection techniques. We then interpret the findings in terms of practical use. The term defect always relates to one or more underlying faults in an artifact such as code. In the context of this article, defects map to single faults. Thus, we use the terms defect...
متن کاملA Software Defect Detection Methodology
This paper identifies baseline procedures for verifying software for individual, small team, and large team development efforts for mission-critical and non-mission-critical software. It is based on defect-based inspections and basis path testing. Basis path testing provides a unified approach for performing unit, integration, and functional tests, whereas defect-based inspections are primarily...
متن کامل